#ifndef __GAF_CONTAINER_H__
#define __GAF_CONTAINER_H__

namespace GAF
{
	class Container; //-* ForEach
}
typedef GAF::Container			GAF_CCContainer;

#include "GAF_Define.h"
#include "GAF_ForEach.h"

namespace GAF
{
	/// 容器基类
	class _ABSTRACT Container : public ForEach
	{
	public:
		Container() {}
		virtual ~Container() {}

// 	public:
// 		virtual Pointer		Foreach(bool bFirst) = 0;
// 		virtual UINT		GetCount() = 0;

	public:
		/// 清除所有对象
		virtual void		Clear() = 0;

	public:
		/// 获得所包含对象数量（有符号版本）
		int			GetCount_S()			// 有符号版本，所得结果有可能存在问题
					{return (int)GetCount();}
	};
}

#endif

